package com.itheima.dao;

import com.itheima.pojo.Emp;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Select;

import java.time.LocalDate;
import java.util.List;

@Mapper
public interface EmpMapper {
    /**
     * 通过id查询员工
     *
     * @return
     */
    Emp findEmpById(Integer id);

    /**
     * 修改员工信息
     * @param emp
     */
    void updateEmp(Emp emp);

    /**
     * 删除多个员工
     * @param ids
     */
    void deleteEmps(List<Integer> ids);

    /**
     * 查询员工信息表
     * @return
     */
    Integer QueryEmpsStepOne(String name, Integer gender, LocalDate begin,LocalDate end);
    List<Emp> QueryEmpsStepTwo(String name, Integer gender, LocalDate begin,LocalDate end,Integer currentPage,Integer pageSize);

    /**
     * 根据id查询
     * @param id
     * @return
     */
    Emp getEmpById(Integer id);

    /**
     * 添加员工
     */
    void addEmp(Emp emp);

    /**
     * 登录
     * @param emp
     */
    Emp login(Emp emp);


    //获取总记录数
    @Select("select count(*) from tlias.emp")
    public Long count();

    //获取当前页的结果列表
/*    @Select("select * from tlias.emp limit #{start}, #{pageSize}")
    public List<Emp> list(Integer start, Integer pageSize);*/
    //获取当前页的结果列表
    public List<Emp> list(String name, Short gender, LocalDate begin, LocalDate end);


    List<Emp> listDemo(String name,Integer gender,LocalDate begin,LocalDate end);


    Integer deleteEmpByDeptId(Integer deptId);

}
